NAT — National Topography
Rete REVOLUTION: Aggregation • Core

📍 Coordinate Attuali

Muovi il mouse sulla mappa

📖 Guida NAT Italia

🎯 Cos'è NAT Italia?

NAT (National Topography) Italia è uno strumento professionale di visualizzazione, analisi e gestione delle reti nazionali italiane di telecomunicazioni DWDM. Progettato per ingegneri, tecnici e manager che operano nell'ambito delle infrastrutture di rete backbone (RC) e access (RA).

🆕 NOVITÀ VERSIONE Rev22.11 (15/01/2026):
📖 Guida Utente Aggiornata: Documentazione completa e strutturata
    • Sezione Design Tokens con lista completa variabili CSS
    • Tab "✨ Animazioni" con tutti gli effetti disponibili
    • Sezione Icone espansa con categorie complete
    • HowTo Toast Notifications con esempi d'uso
    • Palette colori Brand TIM documentata
    • Sistema tipografico completo
🏢 Data Center System: Badge [DC] per identificare centrali Data Center
    • 18 sedi IDC/Housing monitorate con coordinate fallback
    • Bottone "DC" magenta sulla mappa per toggle visualizzazione
🔄 Ottimizzazioni: Miglioramenti prestazioni e stabilità

VERSIONE Rev22.09 (14/01/2026):
📖 Guida Completa Riorganizzata: Documentazione aggiornata per tutte le funzionalità
    • Design System ampliato con Design Tokens CSS
    • Nuovo tab "✨ Animazioni" nella sezione Design
    • Sezione Icone con categorie complete
    • Sezione HowTo per Toast Notifications

VERSIONE Rev22.08 (13/01/2026):
🎨 Design Tokens System: Sistema centralizzato variabili CSS per consistenza visiva
    • 75+ variabili CSS in :root (colori, tipografia, spacing, ombre)
    • Palette TIM unificata: --tim-blue, --tim-red con varianti
    • 535+ istanze migrate a variabili CSS
🔔 Toast Notifications: Sistema notifiche moderno sostituisce alert() nativi
    • Posizione: basso a destra, animazioni fluide
    • 4 varianti: success (verde), error (rosso), warning (arancione), info (blu)
    • Toast automatico su tutte le operazioni "Copia"
🧩 UI Components: Sistema componenti uniformi e riutilizzabili
    • Bottoni: .btn-primary, .btn-secondary, .btn-success, .btn-danger
    • Input, Select, Checkbox con styling custom
    • Badge per stati rete e database (RC/RA/Merged)
    • Card system con varianti colore
✨ Micro-interazioni: Animazioni e feedback visivi migliorati
    • 15+ keyframes per animazioni fluide
    • Hover effects: lift, scale, glow, shine, underline
    • Loading states: spinner, dots, skeleton
    • Effetto ripple sui bottoni primari
    • Supporto prefers-reduced-motion per accessibilità
📱 Layout Responsive: Miglioramenti layout per tutti i dispositivi
    • Sidebar collassabile con toggle
    • Breakpoints: mobile (480px), tablet (768px), desktop (1024px)
    • Pannelli ottimizzati per schermi piccoli

VERSIONE Rev22.07 (07/01/2026):
🔄 Gateway RA→RA Automatici: Inserimento automatico righe gateway tra collegamenti RA consecutivi
    • Solo quando si passa da un Arco RA a un altro Arco RA diverso
    • L'Arco viene cercato nel database RA usando l'ID del collegamento
    • Visualizzazione con icona 🔄 e colore viola (#7c3aed)
🔧 TipoSede Corretto: Correzione automatica TipoSede per garantire continuità
    • Il TipoSede di inizio collegamento eredita dal collegamento precedente
    • Evita inversioni [T3] → [T2] quando dovrebbe essere [T2] → [T3]
📊 Hop Reali in Info: Conteggio hop nel formato "14 > 12" anche nel modal Info
📐 Pannello CRO Ottimizzato: Larghezza ridotta del 15%, footer informativo aggiunto
    • Nuovo bottone ─/□ per ridurre/ripristinare il pannello
    • Footer con istruzioni per aggiornare i percorsi

VERSIONE Rev22.03 (07/01/2026):
🏢 Bottone NODI A1: Nuovo bottone "A1" sulla mappa per visualizzare le 32 centrali POP nazionali
    • Marker 💎 Ciano (#00ffff) con tooltip standard NAT per ogni NODO A1
    • Toggle on/off con feedback visivo sul bottone
    • Badge con conteggio nodi trovati nel database
🎯 Colore Tracker Aggiornato: Marker tracker ora 💚 Verde Primavera (#00ff7f)
    • Distingue chiaramente tracker da altri marker sulla mappa
🖱️ Fix Selezione Testo: Disabilitato cursore di selezione su label e elementi UI
    • Migliora l'esperienza utente evitando selezioni accidentali

VERSIONE Rev22.02 (07/01/2026):
💾 Auto-Switch DB Unificato: All'import o visualizzazione percorsi CRO, switch automatico a DB RA+RC
    • Semplifica gestione percorsi misti RA/RC/Unificato
    • Attivato all'import, toggle "Mostra Tutti" e toggle singolo percorso

VERSIONE Rev22.01 (07/01/2026):
🌍 Integrazione CRO Italia: Visualizza percorsi calcolati da CRO su mappa NAT
    • Pannello "📍 Percorsi CRO" con lista percorsi importati
    • Bottone "CRO" sulla mappa per aprire/chiudere pannello
    • Polyline colorate: Blu (RA), Rosso (RC), Viola (Unificato)
    • Marker per TUTTE le centrali del percorso con tooltip standard NAT
🔀 Multi-Path RA: Distinzione percorsi standard vs Multi-Path nella lista
    • Prefisso "🔀 Multi-Path" per percorsi multi-arco
    • Hop reali vs totali nel formato "8 > 4 hop"
🔒 Percorsi Disabilitati Default: All'apertura i percorsi CRO sono nascosti
🖨️ Fix Stampa PDF: Ripristino corretto tab guida dopo stampa/annulla

VERSIONE Rev21.4 (19/12/2025):
🔎 Fallback Google Maps: Quando Nominatim non trova risultati, appaiono bottoni dedicati
    • Bottone "Google Maps" con stile colorato Google
    • Bottone "❓" sempre visibile per istruzioni coordinate
    • Pannello istruzioni con campo per incollare coordinate
    • Applicazione automatica coordinate da Google Maps
Fix Filtri Centrali/Nodi: Funzioni buildNodesList e buildLinksList ora globali
Fix Marker Mappa: Nodi espansi (TipoSede) ora visibili correttamente su mappa
Fix Copia Nodi: Bottone "Copia centrali/nodi selezionati" ora funziona con tutti i DB
Bottone CLLI Migliorato: Feedback visivo "✅ Copiato!" invece di popup
Tooltip Copia Allineato: Icona 📋 nei tooltip ora allineata a destra
Fix Interazione Mappa: La mappa non si sposta più durante digitazione ricerca

VERSIONE Rev21.3 (17/12/2025):
📊 Info Centrali Vicine: Pannello analisi centrali vicine dalla centrale selezionata
    • Bottone "📊 Info" nella riga della centrale selezionata
    • Layout 2 righe × 4 colonne (Selezionata + 3 RA / NODO A1 + 3 RC)
    • Ricerca collegamenti diretti con Id e distanza
    • Funzione "🛣️ Percorso" con calcolo stradale e popup automatico
32 NODI A1 Integrati: Database POP/NODI A1 per ogni Area geografica
Pannelli Draggable: "Centrali COLT Vicine" e "Info Centrali Vicine" trascinabili
Cancella Tutto: Il bottone ❌ rimuove anche markers e percorsi Info Centrali

VERSIONI PRECEDENTI:
Etichette Tipo Rete: Popup mostra tipo DB per ogni centrale (RC/RA/entrambi)
Database Multipli: Supporto completo per 3 database (RC, RA, RA+RC)
Marker FLUO: Colori ultra-brillanti per selezioni da tabella
Tooltip Ottimizzati: Solo CLLI nella seconda riga, priorità intelligente MERGED
DB RA Default: Applicazione si apre con rete di accesso

💾 Database Disponibili

📊 DB RC - Routing Centrale (Backbone)

Tipo: Rete backbone nazionale
Collegamenti: ~1.197 tra centrali principali
Nodi: ~806 centrali
Distanza: ~29.124 km
Colore Marker: 🔴 Rosso / 💗 Magenta FLUO (#ff0066)
Quando Usarlo: Pianificazione backbone, analisi long-haul, decisioni strategiche

📊 DB RA - Routing Accesso (Access Network) ⭐ DEFAULT

Tipo: Rete di accesso locale
Collegamenti: ~6.187 collegamenti
Nodi: ~4.523 nodi
Distanza: ~15.842 km
Colore Marker: 🔵 Blu / 💎 Ciano FLUO (#00ddff)
Quando Usarlo: Pianificazione locale, analisi copertura access, collegamenti brevi

📊 DB RA+RC - Database MERGED (Vista Combinata)

Tipo: Vista unificata backbone + access
Collegamenti: ~7.384 (con deduplicazione)
Nodi: ~5.329 (unione con identificazione duplicati)
Colore Marker: 🟣 Viola / 🟣 Magenta FLUO PURO (#ff00ff)
Priorità Tooltip: BLU se presente in RA, ROSSO se solo in RC
Quando Usarlo: Analisi topologia completa, identificazione sovrapposizioni

💡 Cambiare Database:
Usa i bottoni colorati nella sezione "💾 Sorgente Database":
📊 DB RA (BLU) → Rete di accesso ⭐ DEFAULT
📊 DB RC (ROSSO) → Rete backbone
📊 DB RA+RC (VIOLA) → Vista combinata

Quando cambi database:
✅ Marker ridisegnati automaticamente
✅ Tooltip aggiornati con colori corretti
✅ Tabelle aggiornate
✅ Contatori ricalcolati
⚠️ Selezioni azzerate (filtri mantenuti)

🎨 Schema Colori Marker

Marker FLUO - Selezionati da Tabella Nodi

Dimensioni: 12px radius + 4px bordo nero (200% più grandi)
DB RC: 💗 Magenta FLUO #ff0066
DB RA: 💎 Ciano FLUO #00ddff
DB MERGED: 🟣 Magenta FLUO PURO #ff00ff ⚡ (IL PIÙ BRILLANTE!)
Caratteristica: Impossibili da non notare sulla mappa!

Marker Standard

Da Collegamenti: 8px, colori pieni (🔴 Rosso, 🔵 Blu, 🟣 Viola)
Default: 6px, trasparenti (opacity 0.4)
Tracker: 💚 Verde Primavera #00ff7f, 24px (per "Centrali COLT Vicine")
NODI A1: 💎 Ciano #00ffff, 14px (32 POP nazionali)

🏷️ Tooltip Aggiornati

Tooltip Nodi

Prima riga: Nome + Checkmark ✓ (se selezionato) - COLORATO
Seconda riga: Solo CLLI in grassetto nero (🆕 rimosso nome duplicato)
Terza riga: 📍 Zona + Regione
Quarta riga: 🌍 Coordinate

Tooltip Collegamenti

Prima riga: ID collegamento - COLORATO
DB MERGED Priorità:
• 🔵 BLU se presente in RA o in entrambi i DB
• 🔴 ROSSO se presente solo in RC

🌟 Funzionalità Principali

🗺️ Mappa Interattiva Avanzata

Tecnologia: Leaflet.js con layer OpenStreetMap
Zoom: 18 livelli (da vista nazionale a dettaglio stradale)
Prestazioni: Rendering ottimizzato per gestire 330+ collegamenti simultanei
Interattività: Pan, zoom, click su elementi, misurazione distanze

🔍 Sistema di Filtri Multi-livello

Filtro Stato (struttura presente ma non attiva in questa revisione): il modello dati supporta 5 stati operativi (ATTIVO, NON_ATTIVO, IN_ATTIVAZIONE, IN_VARIAZIONE, IN_REINSTRADAMENTO), ma per questa versione la sezione di filtro dedicata e la colorazione per stato sono volutamente disabilitate a causa di limitazioni nell’aggiornamento automatico dello stato dei collegamenti.
Filtro Area: 3 macro-aree geografiche (NORD, CENTRO, SUD)
Filtro Zona: 14 zone regionali dettagliate
Filtro Arco: Selezione per segmenti di rete specifici
Ricerca Testuale: Per ID collegamento, nome centrale, CLLI

📏 Strumenti di Misura Professionali

Misura In Linea d'Aria: Calcolo Haversine per distanze geodetiche precise
Misura Stradale: Integrazione OSRM (Open Source Routing Machine) per percorsi reali
Precisione: Al metro per distanze aeree, routing ottimizzato per strade
Comparazione: Visualizzazione simultanea linea retta vs percorso stradale

🔔 Esperienza d'uso e notifiche

Notifiche interne al tool: tutti i messaggi di avviso utilizzano ora un pop up HTML dedicato, visivamente allineato ai pulsanti DB (RA / RC / RA+RC) e non più le finestre di alert del browser.
Conferma operazioni pesanti: i bottoni "Tutti" nelle sezioni "🔗 Collegamenti (Selezionabili e Sempre Visibili)" e "🌐 Centrali / Nodi (Selezionabili e Sempre Visibili)" richiedono una conferma esplicita prima di selezionare l'intero dataset, per evitare attese eccessive durante la sincronizzazione mappa & tabelle.
Messaggi contestuali: gli avvisi riportano sempre il contesto (es. DB non caricato, nessun elemento selezionato, errori di copia negli appunti), per facilitare l'interpretazione rapida durante le attività di progettazione.

🏢 Ricerca Centrali Intelligente

Algoritmo: Ricerca delle 3 centrali più vicine con calcolo real-time
Input: Coordinate GPS o indirizzo geocodificato
Output: Nome, CLLI, distanza aerea, percorso stradale con visualizzazione mappa
Use Case: Site survey, espansione rete, troubleshooting connettività

🆕 Etichette Tipo Rete (05/12/2025):
Ogni centrale nel popup mostra ora il tipo di rete come prima riga:
RC_Italia Core - Centrale presente nel DB backbone
RA_Italia Aggregation - Centrale presente nel DB accesso
Aggregation • Core - Centrale presente in entrambi i database

🔎 Geocoding Bidirezionale

Forward Geocoding: Indirizzo → Coordinate (powered by Nominatim/OpenStreetMap)
Reverse Geocoding: Coordinate → Posizione mappa
Formati Supportati: DD (Decimal Degrees), DMS (Degrees Minutes Seconds)
Precisione: Fino a 6 decimali (±11 cm)

📊 Visualizzazione Dinamica Collegamenti

Modalità Visualizzazione:
• Mostra/Nascondi marker centrali
• Mostra/Nascondi collegamenti non selezionati
• Evidenziazione nodi connessi automatica
• Colorazione stati con 5 codifiche
Selezione: Click su collegamenti per selezione/deselezione
Statistiche: Conteggio real-time collegamenti e distanze selezionate

🚗 Routing Stradale Integrato

Engine: OSRM (Open Source Routing Machine)
Database: OpenStreetMap con aggiornamenti continui
Visualizzazione: Linea blu continua per percorso stradale, linea rossa tratteggiata per distanza aerea
Popup Informativi: Click su linee per dettagli distanze

🎯 Bottone "Select" per Tabelle

Posizione: Sia nella tabella Collegamenti che nella tabella Centrali/Nodi
Funzionalità: Toggle per mostrare/nascondere solo gli elementi selezionati
Colore: Azzurro chiaro per facile identificazione
Uso: Filtraggio rapido per focus su subset specifici

📊 Legenda Stati Operativi con Colorazione


⚠️ Nota: lo stato operativo dei collegamenti (ATTIVO, IN_ATTIVAZIONE, IN_VARIAZIONE, NON_ATTIVO, IN_REINSTRADAMENTO) è riportato a livello di dati e colorazione, ma in questa versione del tool non viene gestito né alimentato automaticamente dai sistemi di esercizio. Le informazioni di stato hanno quindi valore puramente indicativo/esemplificativo e non devono essere utilizzate come riferimento ufficiale per decisioni operative.

Gli stati dei collegamenti sono visualizzati sia sulla mappa che nelle tabelle con codifica cromatica coerente:

  • 🟢 ATTIVO - Collegamento operativo e in servizio normale
  • 🔴 NON_ATTIVO - Collegamento disattivato o non operativo
  • 🟡 IN_ATTIVAZIONE - Fase di commissioning e test
  • 🟠 IN_VARIAZIONE - Modifiche tecniche o upgrade in corso
  • 🔵 IN_REINSTRADAMENTO - Migrazione traffico verso nuovi percorsi

🗂️ Struttura Geografica della Rete

3 Macro-Aree

NORD: Piemonte/Valle d'Aosta (PV), Lombardia (LO), Liguria (LI), Trentino/Veneto/Friuli (NE), Emilia Romagna (ER)
CENTRO: Toscana (TO), Marche/Umbria (MU), Lazio (RM), Abruzzo/Molise (AM)
SUD: Campania/Basilicata (CB), Puglia (PU), Calabria (CA), Sicilia (SI), Sardegna (SA)

14 Zone Regionali

Ogni zona ha un codice a due lettere per identificazione rapida. Le zone seguono i confini amministrativi regionali italiani per facilità di riferimento e coordinamento con enti territoriali.

🔧 Tecnologie Utilizzate

  • Frontend: HTML5, CSS3, JavaScript vanilla (no framework pesanti per massime performance)
  • Mapping: Leaflet.js v1.9.4 - libreria open-source leader per mappe web interattive
  • Tiles: OpenStreetMap - cartografia collaborativa globale
  • Routing: OSRM - routing engine ottimizzato per prestazioni
  • Geocoding: Nominatim (OSM) - geocoding open-source affidabile
  • Calcoli Geometrici: Algoritmo Haversine per distanze geodetiche

💡 Best Practice Generale:
Inizia sempre una nuova sessione di lavoro con il bottone "🔄 Reset All" per partire da una baseline pulita. Questo evita confusione da filtri applicati in sessioni precedenti.

👔 Guida per Manager e Decision Makers

Questa sezione è dedicata a chi necessita di una visione strategica della rete nazionale, deve monitorare KPI operativi, identificare criticità topologiche e prendere decisioni informate su investimenti e pianificazione.

📈 Dashboard Esecutiva - Metriche Chiave

📊 KPI Principali Visualizzabili

1. Coverage Nazionale:
• 124 Centrali distribuite su 3 macro-aree
• Densità per area: applica filtro Area per valutare bilanciamento
• Identificazione zone sotto-servite

2. Salute Operativa Rete:
• % Collegamenti ATTIVI vs totale
• Collegamenti in fase progettuale (IN_ATTIVAZIONE + IN_VARIAZIONE)
• Collegamenti critici (NON_ATTIVO, IN_REINSTRADAMENTO)

3. Progetti in Corso:
• Filtra per "IN_ATTIVAZIONE" → vedi pipeline nuovi collegamenti
• Filtra per "IN_VARIAZIONE" → vedi upgrade/modifiche
• Filtra per "IN_REINSTRADAMENTO" → vedi ottimizzazioni routing

4. Distanze e Topologia:
• 8.024,40 km totali di fibra/collegamenti
• Usa "Selezione Attuale" per subset di interesse
• Confronta distanze tra scenari alternativi

🌍 NOVITÀ: Integrazione CRO Italia
Funzione: Visualizza i percorsi calcolati da CRO Italia su mappa NAT
Workflow:
1. In CRO Italia, calcola i percorsi desiderati (RA, RC o Unificato)
2. Premi bottone "🌍 Mappa NAT" per esportare verso NAT
3. Apri NAT Italia e premi bottone "CRO" sulla mappa
4. Usa "🔄 Aggiorna" per caricare i nuovi percorsi
5. Visualizza polyline colorate con marker per ogni centrale
Benefici Manager:
• Visualizzazione geografica immediata dei percorsi proposti
• Confronto visivo tra alternative Multi-Path
• Export screenshot per presentazioni e documentazione

🎯 Workflow Tipici per Manager

📋 Scenario 1: Report Trimestrale Stato Rete
Obiettivo: Generare snapshot operativo per board/stakeholders
Procedura:
1. Click "🔄 Reset All" per baseline pulita
2. Osserva statistiche globali: 330 Collegamenti, 8.024 km
3. Filtra per "NON_ATTIVO" → conta quanti link down
4. Filtra per "IN_ATTIVAZIONE" → conta progetti in pipeline
5. Usa "🗺️ Zoom All" per vista geografica completa
6. Screenshot della mappa per allegato al report
7. Ripeti per ogni macro-area (NORD/CENTRO/SUD)
Output: Dashboard visuale + metriche quantitative

🚨 Scenario 2: Incident Management - Collegamento Critico Down
Obiettivo: Valutare impatto e identificare bypass
Procedura:
1. Ricerca collegamento in tabella (es: ID o nome centrali)
2. Click sul collegamento per zoom automatico sull'area
3. Osserva visivamente centrali adiacenti
4. Usa "🏢 Centrali COLT Vicine" su centrale impattata
5. Identifica 2-3 percorsi alternativi possibili
6. Misura distanze con strumento 📏
7. Valuta fattibilità e comunica al NOC
Output: Piano di contingenza rapido

📍 Scenario 3: Pianificazione Espansione - Nuova Area
Obiettivo: Decidere dove investire in nuove centrali
Procedura:
1. Filtra per Area di interesse (es: SUD)
2. Usa "🗺️ Zoom All" per visione completa area
3. Osserva densità di nodi: zone "vuote" = opportunità
4. Usa "Ricerca Indirizzo" per città target
5. Clicca "🏢 Centrali COLT Vicine" per vedere distanze esistenti
6. Se distanze >50km = coverage gap identificato
7. Misura potenziali nuovi collegamenti con 📏
Output: Business case per nuova centrale

🎯 Scenario 4: Presentazione Commerciale a Cliente
Obiettivo: Mostrare capillarità e affidabilità rete
Procedura:
1. Filtra per Area/Zona del cliente
2. Seleziona solo collegamenti ATTIVI
3. Usa "Zoom Selezione" per focus su area cliente
4. Evidenzia ridondanza: mostra percorsi alternativi
5. Screenshot per slide deck
6. Mostra progetti IN_ATTIVAZIONE per roadmap futura
Output: Presentazione visual impattante

💼 Casi d'Uso Strategici Avanzati

📊 Analisi Comparativa Multi-Periodo

Obiettivo: Tracciare crescita e evoluzione rete nel tempo
Metodo: Confronta snapshot Rev7.x vs Rev6.x
• Conta nuovi collegamenti aggiunti
• Identifica collegamenti dismessi
• Valuta crescita km fibra totali
• Analizza shift geografico investimenti
Valore: ROI tracking, forecast budget futuro

🔍 Identificazione Colli di Bottiglia

Obiettivo: Trovare single points of failure nella topologia
Metodo:
• Seleziona una zona strategica (es: RM per Lazio)
• Conta quante centrali hanno solo 1-2 collegamenti
• Verifica ridondanza: esistono percorsi alternativi?
• Se centrale ha 1 solo link = SPOF identificato
Azione: Prioritizza investimento in ridondanza

💰 Cost-Benefit Analysis Nuovo Collegamento

Obiettivo: Valutare ROI per proposto nuovo link
Dati Necessari:
• Distanza nuova tratta (usa 📏 sulla mappa)
• Centrali attualmente servite da quella tratta
• Traffic volume potenziale (dato esterno)
Calcolo Rough:
• CAPEX fibra ≈ €20.000-50.000/km (medio)
• Latency risparmiata = (old_distance - new_distance) / 200.000 km/s
Decisione: Se riduzione latency >2ms E traffic >10Gbps → probabile GO

📈 Metriche Avanzate e Formule

📐 Calcolo Densità di Rete

Formula: Densità = Numero Collegamenti / Numero Centrali
Valore Ideale: 2.5-3.5 (rete ben connessa con ridondanza)
NAT Italia: 330/124 = 2.66 (buona densità)
Uso: Valuta singole zone: se <2.0 = sotto-connessa

🌐 Network Resilience Index

Definizione: % centrali con ≥2 collegamenti
Come Calcolare:
1. Seleziona tutte le centrali
2. Per ognuna, conta collegamenti (visibile in lista)
3. Conta centrali con degree ≥2
4. Resilience = (Centrali con ≥2 link / Totale centrali) × 100
Target: >85% per rete robusta

💡 Pro Tips per Manager:
• Usa bottone "Select" nelle tabelle per isolare subset di interesse
• Combina filtri multipli: Area + Stato per analisi incrociate
• Salva screenshot con timestamp per documentazione decisions
• Condividi URL mappa con zoom/filtri applicati al team
• Esporta coordinate centrali chiave per GIS/planning tools

🔧 Guida Tecnica Completa per Ingegneri

Documentazione tecnica approfondita per progettisti di rete, ingegneri di sistema e architetti infrastrutturali. Include specifiche tecniche, formule di calcolo e procedure di verifica.

🔬 Specifiche Tecniche dei Dati

📡 Struttura Dati Collegamenti

Campi Disponibili per Ogni Link:
id: Identificativo univoco numerico (integer)
from / from_id: ID centrale di partenza
to / to_id: ID centrale di arrivo
from_name / to_name: Nomi testuali centrali
distance_km: Distanza in km (float, precisione 2 decimali)
stato: Enum [ATTIVO, NON_ATTIVO, IN_ATTIVAZIONE, IN_VARIAZIONE, IN_REINSTRADAMENTO]
zona: Codice zona (string, 2 caratteri)
regione: Nome esteso regione
area: Enum [NORD, CENTRO, SUD]
arco: Segmento di rete (opzionale)
Formato Storage: Array JavaScript nativo per performance

📍 Struttura Dati Centrali/Nodi

Campi per Ogni Nodo:
id: Identificativo univoco (string/integer)
name: Nome completo centrale
clli: Common Language Location Identifier (standard ITU-T)
lat: Latitudine (float, formato Decimal Degrees, 6 decimali)
lon: Longitudine (float, formato Decimal Degrees, 6 decimali)
zona: Codice zona regionale
area: Macro-area di appartenenza
TipoSede: Classificazione sede (Tipo 1/2/3)
Precisione Coordinate: ±11cm con 6 decimali

📏 Algoritmi di Calcolo Distanze

🌍 Formula Haversine - Distanza Geodetica

Uso: Calcolo distanza "as the crow flies" tra due punti su sfera
Formula Completa:
a = sin²(Δφ/2) + cos(φ1) × cos(φ2) × sin²(Δλ/2)
c = 2 × atan2(√a, √(1−a))
d = R × c
Dove:
• φ = latitudine (in radianti)
• λ = longitudine (in radianti)
• R = raggio terrestre = 6371 km
• Δφ = φ2 − φ1
• Δλ = λ2 − λ1
Errore: <0.5% per distanze <1000km
Implementazione: Funzione JavaScript nativa nell'applicazione

🚗 OSRM Routing - Distanza Stradale

Engine: Open Source Routing Machine v5.x
Database: OpenStreetMap con update mensili
Algoritmo: Contraction Hierarchies per performance
Query: HTTP GET a endpoint OSRM pubblico
Response Time: <500ms tipico per query EU
Precisione: ±2-5% vs distanze reali misurate
Limitazioni:
• Solo strade carrozzabili (no sentieri, private roads in alcuni casi)
• Route optimization basato su tempo, non shortest path puro
• Può differire da GPS turn-by-turn moderni

🔧 Strumenti di Misura - Guida Operativa

📐 Strumento Misura Manuale (Ruler Tool)

Attivazione: Click icona 📏 in barra controlli mappa
Procedura:
1. Tool attivato: cursore cambia in crosshair
2. Click primo punto sulla mappa
3. Appare marker iniziale
4. Click secondo punto
5. Linea rossa tratteggiata collega i punti
6. Popup mostra distanza in km
7. Opzionale: click punti aggiuntivi per polilinea
Cancellazione: Click icona 🗑️ per rimuovere tutte le misure
Precisione: Equivalente a Haversine (±0.5%)
Limiti: No automatic snapping a nodi/link

🎯 Misura Automatica tra Centrali Selezionate

Metodo:
1. Seleziona centrale A nella lista Centrali
2. Seleziona centrale B nella lista Centrali
3. Click collegamento che li unisce (se esiste)
4. Distanza mostrata in popup e in tabella
Alternativa per Centrali Non Direttamente Collegate:
• Usa Ricerca Centrali COLT Vicine da centrale A
• Output include distanza a tutte le centrali limitrofe
• Nessuna se B non è tra le top 3 → usa ruler tool manuale

🧮 Calcoli Ingegneristici Comuni

⚡ Calcolo Latenza Fibra Ottica

Formula Base:
Latency (ms) = (Distance km / Speed km/s) × 1000
Velocità Luce in Fibra:
• Vuoto: c = 299.792 km/s
• Fibra SMF (G.652): v ≈ 200.000 km/s (⅔ c, indice rifrazione n≈1.5)
Esempio:
Distanza ROMA-MILANO ≈ 480 km (aerea)
Latency teorica = 480 / 200.000 × 1000 = 2.4 ms
Latency Reale: +0.5-1ms per commutazione, repeater, connettori
Budget Link: Tipico RTT (Round Trip Time) = latency × 2

📡 Calcolo Attenuazione Fibra

Formula:
Attenuation (dB) = α × Distance (km) + Connectors + Splices
Valori Tipici:
• Fibra SMF G.652 @ 1550nm: α = 0.2-0.25 dB/km
• Connettori: 0.3-0.5 dB ciascuno
• Splice fusion: 0.05-0.1 dB ciascuno
Esempio ROMA-MILANO 480km:
Fibra: 480 × 0.22 = 105.6 dB
Connettori (2): 2 × 0.4 = 0.8 dB
Splice (10 ogni 50km): 10 × 0.08 = 0.8 dB
Totale Link Budget: ~107 dB
Margin: Se Tx=+3dBm, Rx sensitivity=-30dBm → disponibili 33dB → NON sufficiente! → Necessari amplificatori EDFA

🌐 Calcolo Capacità Spettrale DWDM

Canali ITU-T G.694.1 C-band: 80 canali @ 50GHz spacing
Singolo Canale: 100 Gbps tipico (coherent optics)
Capacità Totale Fibra: 80 × 100 = 8 Tbps (8.000 Gbps)
Con Tecnologia Attuale (400G channels):
80 × 400 = 32 Tbps potential
Uso Pratico:
• Calcola quante fibre necessarie per traffic forecast
• Esempio: serve 20 Tbps? → Minimo 3 fibre @ 8Tbps (con margin)

🛠️ Procedure Tecniche Avanzate

🔬 Procedura: Verifica Fattibilità Nuovo Collegamento
Input: Due centrali A e B da connettere
Step 1: Misura distanza aerea con ruler tool
Step 2: Usa "Centrali COLT Vicine" per distanza stradale
Step 3: Calcola rapporto stradale/aerea (ideale <1.3)
Step 4: Se >1.5 → verifica percorso: possibili ostacoli (montagne, proprietà private)
Step 5: Calcola latency teorica (distanza_aerea/200.000×1000)
Step 6: Calcola link budget (formula attenuazione sopra)
Step 7: Se budget >30dB → necessari amplificatori → costo aumenta
Output: GO/NO-GO tecnico + stima complessità

🔍 Procedura: Troubleshooting Collegamento Degradato
Sintomo: Alta latency o packet loss su link esistente
Step 1: Identifica link in tabella Collegamenti
Step 2: Click per zoom e visualizzazione
Step 3: Verifica distanza dichiarata vs misurata (should match)
Step 4: Se mismatch → possibile errore configurazione routing
Step 5: Controlla stato: se IN_VARIAZIONE → lavori in corso
Step 6: Usa "Centrali COLT Vicine" per trovare bypass temporaneo
Step 7: Misura distanza bypass con ruler
Step 8: Valuta se latency aggiuntiva è accettabile per SLA
Output: Piano di mitigazione

📐 Formule di Riferimento Rapido

📊 Quick Reference - Conversioni e Costanti

Conversioni Distanza:
• 1 km = 0.621371 miles
• 1 mile = 1.60934 km
Conversioni Coordinate:
• 1 grado latitudine ≈ 111 km
• 1 grado longitudine ≈ 111 km × cos(latitudine)
• 1' (arc minute) ≈ 1.852 km
• 1" (arc second) ≈ 30.9 metri
Costanti Fibra:
• Velocità luce vuoto: 299.792.458 m/s
• Velocità fibra SMF: ~200.000 km/s
• Attenuazione tipica @ 1550nm: 0.22 dB/km
• Dispersione cromatica SMF: ~17 ps/(nm·km)

🌍 Integrazione CRO Italia - Analisi Percorsi
Funzione: Visualizzazione geografica dei percorsi calcolati da CRO
Dati Disponibili per Analisi:
• Percorsi RA con arco, hop, distanza totale e collegamenti
• Percorsi RC con stati collegamenti (ATTIVO, IN_ATTIVAZIONE, ecc.)
• Percorsi Unificati RA+RC con gateway evidenziati
• Multi-Path RA: hop totali vs hop reali (es: "8 > 4 hop")
Formato Tooltip Centrali:
• RA: Nome (CLLI) [TipoSede]
• RC: Nome (CLLI)
• Gateway: 🔄 icona viola
Colori Percorsi: Blu=RA, Rosso=RC, Viola=Unificato

💡 Tips Tecnici Pro:
• Sempre verificare coordinate centrali con doppio check (Google Maps)
• Usa DMS format per interfacce con sistemi legacy
• Salva coordinate centrali critiche in file esterno per backup
• Per progetti: considera 20-30% margin oltre distanza aerea per posa fibra
• Documentare assumptions (es: α=0.22dB/km) in calcoli link budget

🛠️ Guida Operativa per Tecnici di Campo

Manuale pratico per tecnici che operano sul territorio per installazioni, manutenzioni e interventi su rete. Focus su operatività e troubleshooting rapido.

🚗 Prima di Uscire per un Intervento

✅ Checklist Pre-Intervento

1. Localizza la Centrale Target:
• Cerca nome centrale in tabella "Centrali / Nodi"
• Click per visualizzare posizione esatta su mappa
• Verifica coordinate GPS (LAT/LON)
• Copia coordinate per inserimento in navigatore

2. Identifica Collegamenti Coinvolti:
• Filtra tabella Collegamenti per nome centrale
• Nota tutti i link connessi a quella sede
• Verifica quali sono ATTIVI vs quali in lavorazione
• Stampa/salva screenshot per riferimento offline

3. Pianifica Accesso:
• Usa "🏢 Centrali COLT Vicine" inserendo indirizzo di partenza
• Clicca "Mostra percorso" per routing stradale
• Nota distanza e tempo stimato
• Verifica se serve 4x4 per percorsi di montagna

4. Verifica Situazione Locale:
• Zoom su centrale con livello massimo (18)
• Osserva edifici circostanti, strade, accessi
• Identifica parcheggio potenziale
• Screenshot della zona per riferimento

📍 Sul Campo - Uso dello Strumento

🧭 Navigazione in Tempo Reale

Con Dispositivo Mobile (Tablet/Smartphone):
• Apri NAT Italia nel browser mobile
• Concedi permessi di localizzazione al browser
• La mappa mostra la tua posizione attuale
• Usa "Centrali COLT Vicine" dalla tua posizione live
• Vedi le 3 centrali più prossime in real-time
Offline Fallback:
• Pre-carica pagina NAT Italia quando hai connessione
• Mappa base rimane in cache browser
• Dati centrali sono embedded (no richieste server)
• Funzioni base (zoom, misura) operative offline

🔍 Verifica On-Site

Conferma di Essere nel Posto Giusto:
1. Apri app GPS (es: Google Maps) sul telefono
2. Leggi coordinate attuali
3. Confronta con coordinate centrale in NAT Italia
4. Se match entro 50-100 metri → sei nel posto corretto
5. Se discrepanza >500m → ricontrolla indirizzo
Troubleshooting Posizione Errata:
• Possibile errore dati: segnala a coordinamento
• Usa ricerca indirizzo inversa per verifica
• Chiedi conferma via radio/telefono a control room

🔧 Scenari Operativi Comuni

🛠️ Scenario: Attivazione Nuovo Collegamento
Task: Installare fibra tra Centrale A e Centrale B
Procedura NAT Italia:
1. Cerca Centrale A in tabella
2. Cerca Centrale B in tabella
3. Verifica se collegamento già esiste (stato: IN_ATTIVAZIONE)
4. Usa ruler tool per confermare distanza progettata
5. Clicca entrambe centrali per evidenziare posizioni
6. Zoom per verificare percorso tra le due
7. Usa "Mostra percorso" per routing stradale
8. Identifica punti critici: attraversamenti fiumi, ferrovie, autostrade
9. Documenta con screenshot per report installazione
Post-Attivazione: Segnala a coordinamento per update stato → ATTIVO

🚨 Scenario: Intervento Urgente - Fibra Rotta
Allarme: Link ID 157 ROMA-FIRENZE down
Procedura Rapida:
1. Ricerca "157" in tabella Collegamenti
2. Click per zoom su link
3. Osserva percorso sulla mappa
4. Identifica punto medio approssimativo del tracciato
5. Usa ruler tool per misurare distanza da estremi
6. Inserisci coordinate punto medio in "Ricerca Indirizzo"
7. Clicca "Centrali COLT Vicine" → vedi se ci sono hub di accesso
8. Parti verso zona più probabile (basato su allerta)
9. Sul posto: usa OTDR per localizzare fault esatto
Comunicazione: Report posizione GPS esatta rottura a control room

🔄 Scenario: Verifica Stato Post-Manutenzione
Task: Confermare collegamenti ripristinati dopo intervento
Procedura:
1. Filtra per zona di intervento (es: "RM" per Lazio)
2. Filtra per stato "IN_VARIAZIONE" (collegamenti in lavoro)
3. Identifica i link che hai lavorato oggi
4. Verifica sulla mappa che siano evidenziati
5. Controlla tabella: stato dovrebbe essere IN_VARIAZIONE → ATTIVO
6. Se ancora IN_VARIAZIONE → segnala a coordinator per update DB
7. Screenshot dello stato finale per chiusura ticket
Best Practice: Sempre confermare update DB entro 24h da intervento

📱 Uso Mobile - Tips & Tricks

📲 Ottimizzazione per Tablet/Smartphone

Performance:
• Chiudi altre app per liberare RAM
• Usa WiFi quando disponibile (più veloce di 4G per OSRM routing)
• Se lento: deseleziona "Mostra Marker Centrali" per ridurre rendering
Batteria:
• Riduci luminosità schermo
• Disattiva GPS quando non necessario
• Chiudi tab browser non usati
Connettività:
• Pre-carica mappa con WiFi prima di partire
• Screenshot delle zone di lavoro per backup offline
• Salva coordinate critiche in note del telefono

🗺️ Integrazione con Altri Tool GPS

Export Coordinate per Nav Externa:
1. Click centrale target in NAT Italia
2. Leggi coordinate LAT/LON dal popup o tabella
3. Copia coordinate
4. Apri Google Maps / Waze / TomTom
5. Incolla coordinate in search bar (formato: 41.9028, 12.4964)
6. App naviga verso quel punto
Formato Universale: Decimal Degrees (DD) funziona su tutte le app
Alternative: Se app richiede DMS, usa convertitore in NAT Italia

⚙️ Risoluzione Problemi Comuni

❓ Troubleshooting Guide

Problema: "Non Trovo la Centrale X"
• Verifica spelling: usa ricerca parziale (es: "MIL" per Milano)
• Prova con CLLI invece di nome
• Controlla filtri: se Area SUD attivo, centrali NORD sono nascoste
• Reset All e riprova

Problema: "Mappa Non Si Carica"
• Verifica connessione internet (tiles da OpenStreetMap)
• Refresh page (F5 o pull-to-refresh su mobile)
• Clear cache browser
• Prova browser alternativo (Chrome vs Firefox)

Problema: "Coordinate Sembrano Sbagliate"
• Verifica formato: LAT deve essere ~37-47 per Italia
• LON deve essere ~7-18 per Italia
• Se LAT/LON invertiti: swap manualmente
• Se coordinate tipo "N 41° 54' 10"" → convert to DD first

Problema: "Percorso Stradale Non Disponibile"
• OSRM potrebbe essere offline (temporaneo)
• Fallback: usa distanza aerea × 1.3 come stima
• Usa Google Maps routing come alternativa
• Report issue a team sviluppo

🌍 Uso Percorsi CRO per Interventi
Scenario: Hai ricevuto un percorso calcolato da CRO per un intervento
Come Usare:
1. Apri NAT Italia e premi bottone "CRO" sulla mappa
2. Premi "🔄 Aggiorna" per caricare percorsi recenti
3. Abilita il percorso da visualizzare con il toggle
4. Usa "🔍 Zoom" per centrare la mappa sul percorso
5. Clicca sui marker per vedere dettagli centrali
6. Clicca sulle polyline per vedere ID collegamento e stato
Utilità:
• Verifica visiva del percorso prima di partire
• Identifica punti critici e centrali di transito
• Screenshot per documentazione intervento

💡 Tips Tecnici da Campo:
• Sempre porta power bank per device
• Screenshot critici prima di perdere segnale
• Coordinate centrali critiche in notepad paper come backup
• Testa percorso in NAT Italia la sera prima
• Se dubbio su posizione, chiama control room PRIMA di scavare!

📋 Guida Operativa Step-by-Step

Tutorial completo di tutte le funzionalità dello strumento con istruzioni dettagliate passo-passo.

🖱️ Suggerimenti al Passaggio del Mouse (Tooltip)

Posizione: quasi tutti i pulsanti principali, le icone e i controlli interattivi espongono un breve suggerimento quando ci passi sopra con il mouse.

Cosa mostrano: una descrizione sintetica dell’azione che verrà eseguita (es. "Seleziona tutto", "Azzera la selezione", "Cerca indirizzo / azienda", "Apri la guida").

Perché è utile: aiuta a capire rapidamente la funzione di ogni controllo, senza dover ricordare tutto a memoria, soprattutto nei flussi più complessi (filtri multipli, tracker, ricerca indirizzo, percorsi).

💡 Suggerimento: se non sei sicuro di cosa faccia un bottone, passa sopra il mouse per 1–2 secondi prima di cliccare: il tooltip ti darà un contesto immediato.

🌍 Percorsi CRO Italia - Visualizzazione Geografica

Posizione: Bottone "CRO" sulla mappa (a sinistra, sotto i controlli zoom)

Funzione: Visualizza i percorsi calcolati da CRO Italia su mappa NAT con polyline colorate e marker per ogni centrale.

Come Usare i Percorsi CRO
  1. Esporta da CRO: In CRO Italia, calcola i percorsi e premi "🌍 Mappa NAT"
  2. Apri Pannello: In NAT, premi bottone "CRO" sulla mappa
  3. Aggiorna: Premi "🔄" per caricare i nuovi percorsi
  4. Visualizza: Abilita i percorsi con i toggle nella lista
  5. Naviga: Usa "🔍 Zoom" per centrare la mappa su un percorso
  6. Dettagli: Premi "📋 Info" per vedere tutti i collegamenti
  7. Collegamenti: Premi "📂 Collegamenti" per espandere/comprimere la lista
Tipi di Percorsi
  • Blu - Percorsi RA (Rete Aggregation)
  • Rosso - Percorsi RC (Rete Core)
  • Viola - Percorsi Unificati RA+RC
  • 🔀 Multi-Path - Percorsi RA su archi multipli (con hop reali evidenziati)
  • STD - Percorsi Standard
  • DIV - Percorsi Diversificati (linea tratteggiata)

💡 Info Aggiuntive:
Marker: Ogni centrale del percorso ha un marker cliccabile
Tooltip: Passa sopra i marker per vedere Nome (CLLI) [TipoSede]
Gateway: I transiti RA↔RC sono evidenziati in viola con icona 🔄
DB Automatico: Il database si adatta automaticamente ai percorsi importati

🚦 1. Filtro per Stato - Monitoraggio Operativo

Posizione: Pannello sinistro, sezione "🚦 Filtra per Stato"

Funzione: Controlla visibilità collegamenti in base allo stato operativo. Ogni stato ha checkbox indipendente.

Stati Disponibili e Uso
  • 🟢 ATTIVO - Collegamenti operativi normali. Default: ON
    Quando deselezionare: Per focus solo su problemi/progetti
  • 🔴 NON_ATTIVO - Collegamenti disattivati o fuori servizio. Default: ON
    Quando selezionare solo questo: Audit impianti dismessi, verifica asset
  • 🟡 IN_ATTIVAZIONE - Collegamenti in fase commissioning. Default: ON
    Quando selezionare solo questo: Monitoring progetti, tracking timeline
  • 🟠 IN_VARIAZIONE - Upgrade o modifiche tecniche in corso. Default: ON
    Quando selezionare solo questo: Identificare link a rischio per maintenance window
  • 🔵 IN_REINSTRADAMENTO - Migrazione traffico attiva. Default: ON
    Quando selezionare solo questo: Track operazioni di rete ottimization

💡 Caso d'uso pratico:
Obiettivo: Vedere solo collegamenti che richiedono attenzione
Azione: Deseleziona "ATTIVO" → rimangono visibili solo link con stati non-standard
Risultato: Focus immediato su collegamenti in lavorazione o problematici

🏞️ 2. Filtro per Area - Segmentazione Geografica Macro

Posizione: Pannello sinistro, sezione "🏞️ Filtra per Area".

Funzione: Controllo visibilità per macro-aree geografiche tramite 3 bottoni NORD / CENTRO / SUD. Ogni bottone agisce contemporaneamente su nodi e collegamenti.

Colori: per coerenza visiva con il resto del tool, NORD usa il colore pastello del bottone "Select", SUD il verde del bottone "Tutti", mentre CENTRO utilizza un giallo/arancio pastello intermedio. Quando un'area è disattivata, il bottone torna grigio come il bottone "X" dei filtri.

3 Macro-Aree
  • NORD - Include zone: PV, LO, LI, NE, ER
    Copertura: Piemonte, Valle d'Aosta, Lombardia, Liguria, Trentino, Veneto, Friuli, Emilia Romagna
  • CENTRO - Include zone: TO, MU, RM, AM
    Copertura: Toscana, Marche, Umbria, Lazio, Abruzzo, Molise
  • SUD - Include zone: CB, SA, PU, CA, SI
    Copertura: Campania, Basilicata, Puglia, Calabria, Sicilia, Sardegna

💡 Workflow Report Regionale:
1. Deseleziona tutte le aree tranne quella di interesse (es: solo SUD)
2. Click "🗺️ Zoom All" per vista ottimale dell'area
3. Osserva densità collegamenti e copertura centrali
4. Screenshot per report
5. Ripeti per altre aree se necessario

🔲 3. Filtro per Zona - Granularità Regionale

Posizione: Pannello sinistro, sezione "🔲 Filtra per Zona"

Funzione: Filtro più fine per singole regioni o zone amministrative. 14 zone disponibili.

Zone Disponibili (Codici a 2 Lettere)

NORD: PV (Piemonte/VdA) • LO (Lombardia) • LI (Liguria) • NE (Nord-Est) • ER (Emilia Romagna)
CENTRO: TO (Toscana) • MU (Marche/Umbria) • RM (Lazio) • AM (Abruzzo/Molise)
SUD: CB (Campania/Basilicata) • SA (Sardegna) • PU (Puglia) • CA (Calabria) • SI (Sicilia)

Bottoni Veloci
  • Tutto: Seleziona istantaneamente tutte le 14 zone
    Uso: Ripristino visibilità completa dopo un filtro specifico
  • Azzera: Deseleziona tutte le zone
    Uso: Base per selezione negativa (azzera tutto, poi aggiungi solo quelle volute)

💡 Selezione Negativa Avanzata:
Obiettivo: Vedere tutto tranne Sardegna e Sicilia (isole)
Metodo:
1. Click "Tutti" per selezionare tutto
2. Deseleziona SA (Sardegna)
3. Deseleziona SI (Sicilia)
4. Risultato: Solo Italia continentale visibile

🎯 4. Filtro per Arco - Segmentazione Rete

Posizione: Pannello sinistro, sezione "🎯 Filtra per Arco"

Funzione: Filtro per segmenti di rete specifici (es: backbone, anelli metropolitani, collegamenti transnazionali).

Struttura Archi

Concetto: Gli archi rappresentano raggruppamenti logici di collegamenti per scopo infrastrutturale.
Esempi Tipici:
• Arco_Dorsale_Nord: Collegamenti backbone area settentrionale
• Arco_Anello_RM: Anello metropolitano Roma
• Arco_Interconnessione_EU: Link transfrontalieri
Numero Archi: Variabile (dipende da architettura rete)

Come Usare

1. Espandi lista archi disponibili
2. Seleziona/deseleziona checkbox per arco specifico
3. Solo collegamenti appartenenti ad archi selezionati sono visibili
4. Usa "Tutto"/"Azzera" per controllo rapido
Combinazione con Altri Filtri: Arco + Stato + Area = filtro ultra-specifico

🔗 5. Tabella Collegamenti - Gestione e Selezione

Posizione: Pannello sinistro, sezione "🔗 Collegamenti (Selezionabili e Sempre Visibili)"

Funzione: Lista scrollabile di tutti i collegamenti con ricerca e selezione.

Componenti Tabella
  • Contatore: Mostra "X / Y" dove X=selezionati, Y=visibili con filtri attuali
  • Campo Ricerca: Filtra in tempo reale per ID, nome centrale, CLLI
  • Bottone "X": Pulisce il filtro di ricerca
  • Bottone "Tutti": Seleziona tutti i collegamenti visibili; richiede una conferma prima di procedere, poiché la sincronizzazione di mappa e tabella può richiedere alcuni secondi.
  • Bottone "Azzera": Azzera la selezione
  • Bottone "Select" (Azzurro): Toggle per mostrare SOLO collegamenti selezionati
    Click 1: Mostra solo selezionati • Click 2: Mostra tutti (con filtri applicati)
  • Bottone "Copia" (Giallo): Appare quando almeno 1 collegamento è selezionato. Copia negli appunti i dettagli di tutti i collegamenti selezionati in formato testuale.
  • Lista Scrollabile: Max altezza 135px, scroll automatico se più elementi
Informazioni per Ogni Collegamento

Linea 1: IDCentrale A → Centrale B ✓ (se selezionato)
Linea 2: Distanza km • Zona • Regione • Stato
Colorazione Stato:
Verde = ATTIVO
Rosso = NON_ATTIVO
Giallo = IN_ATTIVAZIONE
Arancione = IN_VARIAZIONE
Blu = IN_REINSTRADAMENTO

Interazioni

Click su Collegamento: Seleziona/deseleziona + zoom automatico sull'area
Evidenziazione Selezione: Sfondo azzurro + bordo sinistro blu
Ricerca: Digita testo → lista filtra istantaneamente
Ricerca Avanzata (Modalità Blocco): Digita più ID separati da virgola/punto e virgola
Esempio: "105, 157, 203" → mostra solo questi 3 collegamenti

💡 Workflow Selezione Multipla:
1. Filtra per zona (es: RM per Lazio)
2. Filtra per stato (es: solo ATTIVO)
3. Click "Tutti" nella tabella Collegamenti (con finestra di conferma) → seleziona tutti i match
4. Click "Select" (azzurro) → vedi solo quelli selezionati
5. Click "🔍 Zoom Selezione" → mappa si centra su subset
Risultato: Vista focalizzata su collegamenti attivi nel Lazio

🌐 6. Tabella Centrali/Nodi - Navigazione per Sede

Posizione: Pannello sinistro, sezione "🌐 Centrali / Nodi (Selezionabili e Sempre Visibili)"

Funzione: Lista delle 124 centrali con ricerca, selezione e zoom automatico.

Componenti Tabella
  • Contatore: "X / Y" dove X=selezionate, Y=visibili
  • Campo Ricerca: Filtra per nome centrale, CLLI, coordinate parziali
  • Bottone "X": Pulisce il filtro di ricerca
  • Bottone "Tutti": Seleziona tutte le centrali visibili; richiede una conferma prima di procedere.
  • Bottone "Azzera": Azzera la selezione
  • Bottone "Select" (Azzurro): Toggle per mostrare SOLO centrali selezionate
  • Bottone "Copia" (Giallo): Appare quando almeno 1 centrale è selezionata. Copia negli appunti i dettagli.
  • Lista Scrollabile: Ordinamento alfabetico automatico per nome
Informazioni per Ogni Centrale

Linea 1: Nome Centrale ✓ (se selezionata)
Linea 2: CLLI • Lat XX.XXXX • Lon YY.YYYY
Evidenziazione: Se selezionata → sfondo rosa + bordo rosso

Interazioni

Click su Centrale: Seleziona/deseleziona + map pan/zoom su quella sede
Zoom Automatico: Livello 10 su centrale selezionata
Evidenziazione Collegamenti: Tutti i link connessi a quella centrale si evidenziano
Ricerca Multipla: Digita parte di nome comune (es: "ROMA") → vedi tutte centrali con "ROMA" nel nome

💡 Trova Tutte Centrali in una Città:
Obiettivo: Vedere tutte le sedi a Milano
Metodo:
1. Campo ricerca Centrali: digita "MILANO"
2. Lista mostra solo match (es: MILANO_NORD, MILANO_SUD, MILANO_CENTRO)
3. Click "Tutti" per selezionarle tutte
4. Click "🔍 Zoom Selezione" → mappa centra su area metropolitana Milano
5. Osserva visivamente tutti link interconnessi tra sedi milanesi

🗺️ 7. Controlli Mappa Interattiva

Posizione: Barra controlli in alto a sinistra sulla mappa

➕ ➖ Zoom In / Out

Funzione: Incrementa/decrementa livello zoom (1-18)
Equivalente: Scroll wheel mouse / pinch-to-zoom touch
Livelli Utili:
• Zoom 6: Vista Italia completa
• Zoom 10: Regione/provincia
• Zoom 14: Città dettaglio
• Zoom 18: Livello strada singolo edificio

🇮🇹 IT - Reset Vista Italia

Funzione: Torna istantaneamente a vista default
Parametri Reset:
• Centro: LAT 41.887, LON 12.549 (Centro Italia)
• Zoom: Livello 6
Quando Usare: Se ti sei perso in zoom profondo e vuoi tornare a overview nazionale

📏 Strumento Misura

Funzione: Attiva modalità misura distanze
Procedura:
1. Click icona 📏
2. Click primo punto su mappa
3. Click secondo punto
4. Appare linea rossa tratteggiata con distanza
5. Opzionale: continua click per misura multi-segmento
Precisione: Calcolo Haversine (±0.5%)
Unità: Kilometri (km) con 2 decimali

🗑️ Cancella Misure

Funzione: Rimuove tutti i segmenti di misura dalla mappa
Effetto: Istantaneo, non reversibile (no undo)
Nota: Non cancella collegamenti o nodi, solo misure manuali

🎯 Tracker - Centrali COLT Vicine

Funzione: Strumento interattivo per trovare centrali vicine a una posizione
Procedura:
1. Click icona 🎯 per attivare il tracker
2. Click su un punto qualsiasi della mappa
3. Viene posizionato un marker verde primavera (#00ff7f)
4. Pannello mostra le 3 centrali più vicine con distanze
Marker: 💚 Verde Primavera, 24px con bordo nero
Tip: Usa insieme alla geocodifica indirizzo per posizionamento preciso

🗑️ Cancella Marker Tracker

Funzione: Rimuove tutti i marker posizionati dal Tracker
Posizione: Bottone attaccato sotto 🎯 Tracker
Alternativa: Disponibile anche nel pannello Tracker come "🗑️ Cancella Marker"
Nota: Non disattiva il Tracker, solo cancella i marker esistenti

A1 - NODI A1 (POP Nazionali)

Funzione: Mostra/Nascondi i 32 NODI A1 (POP) sulla mappa
NODI A1: Principali punti di interconnessione regionali della rete TIM
Marker: 💎 Ciano (#00ffff), 14px con bordo bianco
Tooltip: Nome, CLLI [NODO A1], Zona, Regione, Coordinate
Badge: Mostra conteggio nodi trovati nel database corrente
Lista: ALESSANDRIA, ANCONA, BARI, BERGAMO, BOLOGNA, BOLZANO, BRESCIA, CAGLIARI, CATANIA, CATANZARO, COMO, FIRENZE, GENOVA, MILANO (×2), MODENA, NAPOLI, NOLA, PADOVA, PALERMO, PERUGIA, PESCARA, PISA, RIMINI, ROMA (×2), VERONA, SAVONA, TARANTO, TORINO, TRIESTE, VENEZIA

CRO - Percorsi CRO Italia

Funzione: Pannello per visualizzare percorsi calcolati da CRO Italia
Attivazione: Click bottone CRO per aprire/chiudere pannello
Badge: Numero percorsi importati da CRO
Pannello:
• 🔄 Aggiorna - Ricarica percorsi da localStorage
• 👁️ Mostra Tutti - Abilita tutti i percorsi su mappa
• 🚫 Nascondi Tutti - Disabilita tutti i percorsi
• 🗑️ Elimina - Rimuove tutti i percorsi importati
Polyline: 🔵 Blu (RA), 🔴 Rosso (RC), 🟣 Viola (Unificato)
DB Auto-Switch: Quando si importano o abilitano percorsi CRO, il database passa automaticamente a DB RA+RC (Unificato)

❌ Cancella Tutto dalla Mappa

Funzione: Rimuove TUTTI gli elementi aggiunti manualmente alla mappa
Elementi Rimossi:
• Marker geocodifica (ricerca indirizzo/coordinate)
• Layer centrali vicine (marker cliente + centrali)
• Misure e linee di misura
• Percorsi CRO visualizzati
• Marker tracker
Selezioni nodi e collegamenti (tutte le selezioni vengono azzerate)
Risultato: Mappa completamente pulita e pronta per nuove operazioni

⚡ 8. Pulsanti Azione Rapida

Posizione: Solitamente in fondo al pannello sinistro (scroll down necessario)

🔍 Zoom Selezione

Funzione: Auto-zoom su elementi correntemente selezionati
Algoritmo: Calcola bounding box di tutti nodi/link selezionati, poi fit map
Padding: Automatico 50px per evitare elementi ai bordi
Quando Usare: Dopo selezione multipla per focus area
Prerequisito: Almeno 1 collegamento o centrale deve essere selezionato

🗺️ Zoom All

Funzione: Auto-zoom su TUTTI elementi visibili (rispetta filtri)
Differenza vs Zoom Selezione: Ignora selezione, usa visibilità
Esempio Uso:
• Filtri attivi: Area SUD + Stato ATTIVO
• Click "Zoom All"
• Risultato: Mappa si adatta per mostrare tutto il SUD con link attivi
Tip: Combina con filtri per viste personalizzate rapidamente

🔄 Reset All

Funzione: Reset completo interfaccia a stato default
Cosa Viene Resettato:
• ✅ Tutti filtri Stato → tutti ON
• ✅ Tutti filtri Area → tutti ON
• ✅ Tutti filtri Zona → tutti ON
• ✅ Filtro Arco → tutti ON
• ✅ Selezioni collegamenti → tutte OFF
• ✅ Selezioni centrali → tutte OFF
• ✅ Campo ricerca Collegamenti → vuoto
• ✅ Campo ricerca Centrali → vuoto
• ✅ Misure sulla mappa → cancellate
• ✅ Vista mappa → Italia centro zoom 6
• ✅ Marker geocoding → rimosso
• ✅ Percorsi stradali visualizzati → cancellati
⚠️ NON Resettato: Preferenze browser, history, bookmark
Best Practice: Usa Reset All all'inizio di ogni nuova sessione di lavoro

🔎 9. Geocoding e Ricerca Indirizzo

Posizione: Pannello sulla mappa (solitamente floating box in alto a sinistra)

🏠 Ricerca Indirizzo (Forward Geocoding)

Input: Indirizzo testuale (strada, città, CAP, landmark)
Engine: Nominatim (OpenStreetMap)
Procedura:
1. Click campo "Ricerca Indirizzo"
2. Digita indirizzo (es: "Via Roma 10, Milano")
3. Premi Enter o click 🔎
4. Mappa si centra su indirizzo trovato
5. Marker rosso appare sul punto
6. Coordinate nei campi LAT/LON si aggiornano
Tips per Risultati Migliori:
• Includi sempre città: "Piazza Duomo, Milano" meglio di solo "Piazza Duomo"
• Usa CAP per disambiguare: "Via Roma, 20100 Milano"
• Landmark famosi funzionano: "Colosseo Roma", "Torre di Pisa"
Limitazioni:
• Indirizzi molto nuovi potrebbero non essere nel DB OSM
• Zone rurali hanno copertura minore
• Formattazione italiana richiesta (no indirizzi US-style)

🔎 Nessun Risultato? Usa Google Maps!

Funzione: Quando Nominatim non trova risultati, appare il bottone Google Maps. In più è sempre disponibile il bottone "❓" per le istruzioni.

Bottoni disponibili:
"Google Maps" - Appare solo quando non ci sono risultati. Apre Google Maps E mostra automaticamente le istruzioni
"❓" - Sempre visibile. Mostra/nasconde le istruzioni per copiare le coordinate

Procedura:
1. Cerca un indirizzo che non viene trovato
2. Clicca il bottone "Google Maps" (stile colorato)
3. Si apre Google Maps con la ricerca + si aprono le istruzioni automaticamente
4. Trova il punto esatto sulla mappa Google
5. Click destro sul punto → le coordinate appaiono in alto
6. Copia le coordinate (es: "41.1234, 14.5678")
7. Torna su NAT e incolla nel campo "Incolla coordinate"
8. Clicca "📍 Applica Coordinate"
→ Risultato: Marker appare sul punto con le coordinate corrette
→ Il pannello istruzioni e il bottone Google Maps si chiudono automaticamente

💡 Tip: Puoi usare il bottone "❓" in qualsiasi momento per vedere le istruzioni, anche senza cercare prima un indirizzo!

📍 Ricerca per Coordinate (Reverse Geocoding)

Input: LAT e LON numerici
Formato: Decimal Degrees (DD) - esempio: 45.4642, 9.1900
Procedura:
1. Click campo LAT
2. Inserisci latitudine (range valido Italia: ~36 to ~47)
3. Click campo LON
4. Inserisci longitudine (range valido Italia: ~6 to ~19)
5. Click ➤ (freccia) o premi Enter
6. Mappa si centra su coordinate
7. Marker rosso appare
Precisione:
• 4 decimali: ±11 metri
• 5 decimali: ±1.1 metri
• 6 decimali: ±11 cm
Validazione:
• LAT fuori range → errore o default a centro Italia
• LON fuori range → errore
• Formato errato (es: lettere) → ignore o default

🌐 Display Coordinate Real-Time

Funzione: Campo "Ricerca Indirizzo" mostra sempre coordinate centro mappa
Aggiornamento: Real-time mentre trascini/panori la mappa
Uso:
• Sposta mappa su punto di interesse
• Leggi coordinate nel campo
• Copia per uso in altri tool (GPS, GIS, etc.)
Formato Display: "LAT: XX.XXXXXX, LON: YY.YYYYYY"

🏢 10. Ricerca Centrali COLT Vicine - Guida Completa

Pulsante: "🏢 Centrali COLT Vicine" (appare sotto il campo Ricerca Indirizzo)

Prerequisito: Deve esserci un marker rosso sulla mappa (da geocoding o coordinate)

📋 Workflow Completo Passo-Passo:
Passo 1: Definisci Posizione di Partenza
• Opzione A: Digita indirizzo in "Ricerca Indirizzo" + Enter
• Opzione B: Inserisci coordinate LAT/LON + click ➤
→ Risultato: Marker rosso appare su mappa

Passo 2: Avvia Ricerca
• Click pulsante "🏢 Centrali COLT Vicine"
• Attendi 1-2 secondi (calcolo distanze in corso)
→ Risultato: Pannello popup con 3 risultati

Passo 3: Analizza Risultati
• Per ogni centrale vedi:
- Nome e CLLI
- Distanza aerea in km (linea rossa tratteggiata)
- Link "Mostra percorso" per routing stradale
→ Risultato: Top 3 centrali ordinate per distanza crescente

Passo 4: Visualizza Percorso Stradale
• Click "Mostra percorso" su centrale scelta
• Attendi 2-3 secondi (query OSRM)
→ Risultato: Linea blu continua appare su mappa

Passo 5: Leggi Dettagli Distanze
• Click su linea rossa (distanza aerea) → popup con km
• Click su linea blu (percorso stradale) → popup con km stradali
→ Risultato: Confronto diretto aerea vs stradale

Passo 6: Valuta e Decidi
• Calcola rapporto stradale/aerea
• Se <1.3 → percorso diretto, fattibile
• Se >1.5 → percorso tortuoso, possibili ostacoli
→ Risultato: Decision support per feasibility

🔢 Algoritmo di Ricerca

Step 1: Calcola distanza Haversine da punto query a tutte le 124 centrali
Step 2: Sort centrali per distanza crescente
Step 3: Prendi top 3
Step 4: Per ogni top 3, query OSRM per routing stradale
Step 5: Display risultati con dual metric (aerea + stradale)
Performance: ~1-2 secondi totali su connessione media
Fallback: Se OSRM fail, mostra solo distanza aerea

📊 Interpretazione Output

Distanza Aerea (Linea Rossa Tratteggiata):
• Rappresenta shortest path "as the crow flies"
• Utile per: calcolo latenza fibra, rough estimate costi
• Limitazione: Ignora ostacoli (montagne, fiumi, proprietà private)

Distanza Stradale (Linea Blu Continua):
• Rappresenta percorso effettivo con strade reali
• Utile per: logistica installazione, tempo viaggio tecnici
• Include: curve, salite, limiti velocità stradali

Rapporto Stradale/Aerea (Indice di Tortuosità):
• <1.2: Percorso quasi rettilineo (ideale)
• 1.2-1.4: Percorso ragionevole (normale)
• 1.4-1.6: Percorso tortuoso (attenzione)
• >1.6: Percorso molto tortuoso (problematico, possibili ostacoli significativi)

💡 Pro Tips Centrali COLT Vicine:
• Ripeti ricerca da posizioni diverse per coverage analysis
• Screenshot risultati per documentazione progetto
• Se top 3 tutte >50km → identificato gap di coverage
• Usa in combo con filtro Zona per focus regionale
• Per installazioni: considera sempre percorso stradale, non aerea

📊 10b. Info Centrali Vicine - Analisi dalla Centrale Selezionata

Pulsante: "📊 Info" (appare nella riga della centrale selezionata nella tabella Centrali/Nodi)

Prerequisito: Deve essere selezionata almeno una centrale dalla lista e attivo un database (DB RA, DB RC o DB RA+RC)

📊 Funzione Info Centrali Vicine
Questa funzione permette di analizzare le centrali vicine partendo da una centrale già presente nella rete, a differenza di "Centrali COLT Vicine" che parte da un indirizzo/posizione cliente.

📋 Come Usare - Step by Step

Passo 1: Seleziona una Centrale
• Vai alla sezione "🌐 Centrali / Nodi"
• Cerca e clicca sulla centrale di interesse
→ La riga diventa rossa e appare il bottone "📊 Info"

Passo 2: Apri il Pannello Info
• Clicca sul bottone verde "📊 Info" a destra della riga
→ Si apre il pannello con layout 2×4

Passo 3: Analizza i Risultati
• Il pannello mostra 8 card in 2 righe:
Riga 1: ⭐ Selezionata + 🔵 3 Centrali RA (Tipo 1/2) più vicine
Riga 2: 🟣 NODO A1 (stesso Area) + 🔴 3 Centrali RC più vicine

📊 Informazioni per Ogni Card

Dati mostrati:
• Nome centrale e CLLI
• Tipo (RA T1/T2, RC, NODO A1)
• Info collegamento (se esiste): ✅ Id collegamento + distanza
• Oppure: ⚠️ "Nessun collegamento diretto" + distanza linea d'aria

Bottoni per ogni card:
• 🎯 Zoom: Centra mappa sulla centrale
• 📋 Copia CLLI: Copia il codice CLLI negli appunti (feedback visivo: diventa verde "✅ Copiato!")
• 🛣️ Percorso: Disegna percorso stradale (non disponibile per "Selezionata")

🗺️ Funzione Percorso

Cosa fa il bottone "🛣️ Percorso":
• Disegna linea d'aria tratteggiata rossa
• Calcola e disegna percorso stradale blu via OSRM
• Apre automaticamente popup con:
  - Distanza linea d'aria
  - Distanza stradale
  - Info collegamento (se presente)

Colore percorso: Blu (#0000FF) - stesso colore di "Centrali COLT Vicine"

🟣 NODI A1 - Database Integrato

Cosa sono: 32 POP/NODI A1 strategici distribuiti per Area geografica
Funzione: Il pannello mostra automaticamente il NODO A1 più vicino nella stessa Area
Aree coperte: PV, LO, MI, LI, TA, VE, FV, NE, ER, TO, MU, LA, AM, CB, PU, CA, SI, SA
Esempi NODI A1: MILANO BERSAGLIO, ROMA INVIOLATELLA, NAPOLI TUPPUTI, TORINO LANCIA...

🔗 Ricerca Collegamenti

Come funziona:
Per ogni centrale mostrata, il sistema cerca se esiste un collegamento diretto con la centrale selezionata nei database attivi (RC e/o RA).

Se trovato: ✅ Mostra Id collegamento + distanza del link
Se non trovato: ⚠️ Mostra "Nessun collegamento diretto" + distanza linea d'aria

🖱️ Pannello Draggable

Funzione "🔓 Sposta":
• Click su "🔓 Sposta" → diventa "🔒 Blocca"
• Ora puoi trascinare il pannello dalla barra del titolo
• Click su "🔒 Blocca" per fissare la posizione

Posizione default: In basso a sinistra sulla mappa

💡 Differenza tra le due funzioni:
🏢 Centrali COLT Vicine:
• Punto di partenza: indirizzo/posizione cliente
• Trova le 3 centrali più vicine al cliente
• Uso: pianificazione nuove connessioni cliente

📊 Info Centrali Vicine:
• Punto di partenza: centrale esistente nella rete
• Trova NODO A1, centrali RC e RA vicine
• Mostra collegamenti esistenti
• Uso: analisi topologia, pianificazione espansione rete, routing alternativo

💡 Pro Tips Info Centrali Vicine:
• Usa in DB RA+RC per vedere tutte le opzioni di routing
• I collegamenti con ✅ indicano percorsi già esistenti nella rete
• I ⚠️ indicano possibili nuovi tratti da realizzare
• Confronta distanza collegamento vs linea d'aria per valutare efficienza
• Il NODO A1 è utile per identificare il punto di aggregazione principale

📊 11. Controlli Visualizzazione Mappa

Posizione: Checkboxes solitamente sotto la mappa o nel pannello controlli

☑️ Mostra Marker Centrali

Funzione: Toggle visibilità dei marker circolari sulle centrali
Default: ON (marker visibili)
Quando Disattivare:
• Mappa troppo affollata con 124 marker
• Performance lenta (device vecchi)
• Focus solo su collegamenti, non su nodi
Effetto OFF: Centrali spariscono visualmente, ma collegamenti rimangono

☑️ Mostra Collegamenti Non Selezionati

Funzione: Toggle visibilità collegamenti non selezionati
Default: ON (tutti collegamenti visibili)
Quando Disattivare:
• Hai selezionato subset specifico e vuoi focus SOLO su quello
• Ridurre clutter visivo
Effetto OFF: Solo collegamenti selezionati (con ✓) rimangono visibili
Combinazione Potente: OFF + "Select" nella tabella = vista ultra-pulita

☑️ Evidenzia Nodi Connessi

Funzione: Quando selezioni collegamenti, evidenzia automaticamente nodi terminali
Default: Dipende da implementazione (solitamente ON)
Effetto ON: Centrali agli estremi di link selezionati cambiano colore/dimensione
Uso: Visualizzazione rapida topologia: quali nodi sono hub critici
Nota: Non seleziona i nodi nella tabella Centrali, solo evidenziazione visiva
✅ Fix 05/12/2025: Ora funziona correttamente con tutti i database (DB RC, DB RA, DB RA+RC)

📍 12. Tracker Coordinate Mouse (Pannello Persistente)

Posizione: Floating panel in basso a destra della mappa

Funzione: Mostra coordinate real-time del cursore mouse sulla mappa

Informazioni Visualizzate

Formato DD (Decimal Degrees):
• Lat: XX.XXXXXX°
• Lon: YY.YYYYYY°
Formato DMS (Degrees Minutes Seconds):
• Lat: XX° YY' ZZ" N/S
• Lon: XX° YY' ZZ" E/W
Aggiornamento: Real-time seguendo mouse
Precisione: 6 decimali (±11 cm)

Uso Pratico

Identificazione Rapida Posizione:
• Muovi mouse su punto di interesse
• Leggi coordinate istantaneamente
• No need per click o geocoding
Export Coordinate:
• Hover su punto
• Leggi coordinate nel tracker
• Scrivi manualmente o screenshot
Verifica Centrali:
• Hover su marker centrale
• Controlla coordinate nel tracker
• Confronta con valori in tabella Centrali

🎓 13. Tips Finali e Best Practices

🏆 Golden Rules per Uso Efficace:
1. Sempre "Reset All" All'Inizio
• Evita confusione da filtri/selezioni sessioni precedenti
• Baseline pulita = analisi affidabile

2. Combina Filtri Strategicamente
• Esempio: Area SUD + Stato ATTIVO + Zona SA = tutti link attivi in Sardegna
• Più filtri = più precisione

3. Usa "Select" per Focus
• Seleziona subset interessante
• Click "Select" (azzurro) in tabella
• Vista pulita solo su ciò che conta

4. Screenshot per Documentazione
• Mappe con filtri applicati = instant report
• Include timestamp e descrizione filtri

5. Verifica Coordinate con Doppio Check
• NAT Italia + Google Maps = massima affidabilità
• Centrale critica? Verifica posizione su due fonti

6. Mobile: Pre-Carica Prima di Uscire
• Apri tool con WiFi
• Mappa tiles in cache
• Screenshot zone lavoro

7. Salva Lavoro Frequentemente
• Browser può crashare
• No auto-save: screenshot o note esterne

8. Coordinate per GIS: Usa DD
• Decimal Degrees = formato universale
• Import diretto in QGIS, ArcGIS, Google Earth

9. Distanze: Aerea per Latenza, Stradale per Logistica
• Calcoli tecnici → distanza aerea
• Planning installazione → distanza stradale

10. Report al Team: Condividi URL
• URL con filtri applicati può essere condiviso
• Team vede stessa vista
• Collaborazione facilitata

⚠️ Troubleshooting Generale

Problema: Tool Lento
→ Disattiva "Mostra Marker Centrali"
→ Chiudi altre tab browser
→ Usa Chrome/Firefox (no IE/Edge vecchi)

Problema: Mappa Non Si Carica
→ Verifica connessione internet
→ Refresh page (F5)
→ Clear cache browser

Problema: Coordinate Sbagliate
→ Verifica formato: LAT deve essere ~36-47, LON ~6-19 per Italia
→ Se invertiti: swap manualmente
→ Confronta con Google Maps

Problema: Percorso Stradale Non Appare
→ OSRM potrebbe essere temporaneamente offline
→ Attendi 30 sec e riprova
→ Fallback: usa distanza aerea × 1.3 come stima

Problema: Non Trovo Collegamento X
→ Verifica filtri attivi (Area, Zona, Stato, Arco)
→ Click "Reset All" e riprova
→ Cerca per ID numerico invece di nomi

Problema: Select (Azzurro) Non Funziona
→ Verifica di aver selezionato almeno 1 elemento prima
→ Deseleziona tutto e riprova
→ Refresh page se persiste

💡 Ultimo Consiglio Professionale:
Questo tool è potente quanto sai usarlo. Investi 30 minuti esplorando tutte le funzioni con dati reali. Prova combinazioni di filtri assurde, rompi cose, fai errori. L'unico modo per padroneggiare uno strumento è sporcarsi le mani. Buon lavoro! 🚀

💾 Procedura Aggiornamento Database

Guida completa per l'aggiornamento dei database RC e RA dell'applicazione NAT Italia. La procedura prevede due blocchi separati di aggiornamento per garantire integrità e tracciabilità.

⚠️ IMPORTANTE - Aggiornamento in Due Blocchi
I database vengono aggiornati separatamente per garantire:
• ✅ Tracciabilità delle modifiche per singola rete
• ✅ Rollback selettivo in caso di problemi
• ✅ Validazione indipendente dei dati
• ✅ Continuità del servizio durante l'update

📁 Struttura File Database

File Sorgente (Excel)

DB RC (Backbone):
RC_Italia_Nodes.xlsx - Centrali rete backbone
RC_Italia_Links.xlsx - Collegamenti rete backbone

DB RA (Access):
RA_Italia_Nodes.xlsx - Centrali rete accesso
RA_Italia_Links.xlsx - Collegamenti rete accesso

File Output (JSON)

Generati dalla conversione:
db1_nodes.json - Nodi RC (backbone)
db1_links.json - Link RC (backbone)
db2_nodes.json - Nodi RA (access)
db2_links.json - Link RA (access)

Nomenclatura:
• DB1 = RC Italia (Backbone/Core)
• DB2 = RA Italia (Access/Aggregation)

🔄 BLOCCO 1: Aggiornamento DB RC (Backbone)

📋 Step-by-Step DB RC

STEP 1 - Preparazione Excel RC
1. Apri il file RC_Italia_Nodes.xlsx
2. Verifica/aggiorna i seguenti campi obbligatori:
    • id: Identificativo univoco centrale
    • name: Nome descrittivo centrale
    • clli: Codice CLLI (8-11 caratteri)
    • lat: Latitudine (formato DD, es: 41.902784)
    • lon: Longitudine (formato DD, es: 12.496366)
    • zona: Codice zona 2 lettere (es: RM, LO, CB)
    • region: Nome regione esteso
3. Salva il file Excel

STEP 2 - Preparazione Links RC
1. Apri il file RC_Italia_Links.xlsx
2. Verifica/aggiorna i campi:
    • id: ID collegamento
    • from: CLLI centrale origine
    • to: CLLI centrale destinazione
    • distance: Distanza in km
    • state: Stato operativo
    • zona: Zona di appartenenza
    • arco: Arco di rete (opzionale)
3. Salva il file Excel

STEP 3 - Conversione JSON
1. Esegui lo script di conversione Python:
python convert_excel_to_json.py --db RC
2. Verifica output: db1_nodes.json e db1_links.json
3. Controlla console per errori di validazione

STEP 4 - Integrazione HTML
1. Apri il file HTML dell'applicazione
2. Cerca la sezione // === DATABASE RC (DB1) ===
3. Sostituisci il contenuto JSON dei nodi e link
4. Salva il file HTML

STEP 5 - Validazione
1. Apri l'applicazione nel browser
2. Seleziona "📊 DB RC" (bottone rosso)
3. Verifica contatori: nodi e collegamenti
4. Test visivo su mappa
5. Test ricerca centrali

🔄 BLOCCO 2: Aggiornamento DB RA (Access)

📋 Step-by-Step DB RA

STEP 1 - Preparazione Excel RA
1. Apri il file RA_Italia_Nodes.xlsx
2. Verifica/aggiorna i campi (stessi di RC):
    • id, name, clli, lat, lon, zona, region
3. Salva il file Excel

STEP 2 - Preparazione Links RA
1. Apri il file RA_Italia_Links.xlsx
2. Verifica/aggiorna i campi (stessi di RC)
3. Salva il file Excel

STEP 3 - Conversione JSON
1. Esegui lo script di conversione:
python convert_excel_to_json.py --db RA
2. Verifica output: db2_nodes.json e db2_links.json

STEP 4 - Integrazione HTML
1. Cerca la sezione // === DATABASE RA (DB2) ===
2. Sostituisci il contenuto JSON
3. Salva il file HTML

STEP 5 - Validazione
1. Seleziona "📊 DB RA" (bottone blu)
2. Verifica contatori
3. Test mappa e ricerca

✅ Validazione Finale DB MERGED

Test Completo Post-Update

1. Verifica DB MERGED:
• Clicca "📊 DB RA+RC" (bottone viola)
• Verifica che contatori siano somma logica dei due DB
• Controlla che nodi duplicati abbiano _source: 'BOTH'

2. Test Etichette Tipo Rete:
• Usa "🏢 Centrali COLT Vicine" in modalità MERGED
• Verifica che le etichette mostrino correttamente:
    • RC_Italia Core per centrali solo RC
    • RA_Italia Aggregation per centrali solo RA
    • Aggregation • Core per centrali in entrambi

3. Test Funzionalità:
• Filtri per zona/area
• Selezione collegamenti
• Zoom e navigazione mappa
• Calcolo percorsi stradali

⚠️ Troubleshooting Update

Problemi Comuni e Soluzioni

Problema: Coordinate non valide
→ Verifica formato: LAT 36-47, LON 6-19 per Italia
→ Usa punto decimale, non virgola
→ Rimuovi spazi extra

Problema: CLLI duplicati
→ Ogni CLLI deve essere univoco nel DB
→ Controlla con formula Excel: =COUNTIF(A:A,A2)>1

Problema: Link orfani
→ Verifica che FROM e TO esistano nella lista nodi
→ Case-sensitive: "RMCNTL01" ≠ "rmcntl01"

Problema: JSON malformato
→ Usa validatore JSON online
→ Controlla virgole finali e parentesi
→ Encoding UTF-8 senza BOM

Problema: Mappa vuota dopo update
→ Apri Console Browser (F12)
→ Cerca errori JavaScript rossi
→ Verifica che arrays non siano vuoti

💡 Best Practice Update Database:
Backup SEMPRE prima di ogni modifica
Versioning: nomina file con data (es: NAT_Rev17_5_2025-12-05.html)
Test incrementale: aggiorna un DB alla volta
Documenta: annota modifiche effettuate
Ambiente staging: testa su copia prima di produzione

📊 Struttura Dati Riferimento

Schema Nodo (Node)

{
  "id": "CENTRALE_001",
  "name": "Milano Centrale",
  "clli": "MLNOITXA",
  "lat": 45.4642,
  "lon": 9.1900,
  "zona": "LO",
  "region": "Lombardia"
}

Schema Collegamento (Link)

{
  "id": "LINK_001",
  "from": "MLNOITXA",
  "to": "RMCNTLXA",
  "distance": 573.2,
  "state": "ATTIVO",
  "zona": "LO",
  "region": "Lombardia",
  "arco": "Dorsale_Nord_Sud"
}

📞 Supporto Tecnico
Per problemi durante l'aggiornamento database:
• Verifica questa guida passo-passo
• Controlla console browser per errori
• Confronta con backup funzionante
• Contatta il team di sviluppo con log errori

Cambio database in corso…
Attendi che tabelle e mappa siano aggiornate.